package com.ruoyi.system.domain.module.estate;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
import java.util.List;

/**
 * 报修记录对象 repair_record
 *
 * @author ruoyi
 * @date 2021-08-21
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("estate_repair_record")
public class RepairRecord implements Serializable {

    private static final long serialVersionUID=1L;


    /**
     * $column.columnComment
     */
    @TableId(value = "id",type = IdType.AUTO)
    private Long id;
	private Integer propertyId;
    /**
     * 小区id
     */
    private Integer estateId;

	@Excel(name = "小区")
	private String estateName;
	/**
	 *  记录类型 0 - 业主上报  1 - 工单(内部人员上报)
	 */
	private Integer recordType;

    /**
     * 上报人id
     */
    private Integer userId;

	/**
	 * 工单编号
	 */
	@Excel(name = "工单编号")
	private String recordNo;

    /**
     * 业主楼号户号
     */
	@Excel(name = "报修位置")
    private String roomNo;

    /**
     * 业主手机号
     */
	@Excel(name = "手机号")
    private String phoneNum;

	private Integer pickType;

    /**
     * 添加时间
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

	@Excel(name = "报修时间")
	@TableField(exist = false)
	private String createTimes;
    /**
     * 业主描述
     */
	@Excel(name = "问题描述")
    private String content;

    /**
     * 业主上传图片
     */
    private String imgUrl;

    /**
     * 状态
     */
    private Integer state;


	/**
	 * 维修人员id
	 */
	private Integer opWorkerId;

	/**
	 *  有偿类型  0 - 公共报修 1 - 有偿报修
	 */
	private Integer checkType;

	@Excel(name = "报修人员")
	private String nickName;
    /**
     * 上门修理人员
     */
	@Excel(name = "维修人员")
    private String opUserName;

	@TableField(exist = false)
	private String beginDate;
	@TableField(exist = false)
	private String endDate;

	private Integer opWxUserId;
	private String opWxNickName;


	/**
	 * 上门修理人员手机号
	 */
	private String opWorkerPhone;

	/**
     * 修理状态
     */
    private Integer opState;

    /**
     * 修理反馈
     */
	@Excel(name = "维修反馈")
    private String opResult;


	private Date opTime;

	@Excel(name = "处理时间")
	@TableField(exist = false)
	private String opTimes;

    /**
     * 修理上传图片
     */
    private String opImgUrl;

	private Integer isDel;


    @TableField(exist = false)
    private List<String> imgUrlList;


    @TableField(exist = false)
    private List<String> opImgUrlList;

}
